개발 초기 마일스톤

NOTE

신규 프로젝트 착수 시 GitHub 마일스톤 기준으로 밟아 나갈 초기 개발 단계 체크리스트.

📌 개념

  • GitHub 저장소 생성 → 마일스톤 작성

📎 기타

각 단계는 앞 단계의 산출물을 입력으로 삼는 순서로 배치되어 있다 — 설계가 코드보다 먼저이고, 안정성(에러/동시성) 검증이 기능 구현보다 뒤에 오는 흐름이다.

  1. 마일스톤 작성 — 전체 일정과 범위를 먼저 못박아야 이후 단계들이 “언제까지 뭘 끝낼지” 기준을 가질 수 있다.
  2. 요구사항 분석 및 문서화 — 설계(ERD, API)를 시작하기 전에 무엇을 만들지부터 문서로 합의해두지 않으면 뒷단에서 재작업이 생긴다.
  3. ERD 설계 — 데이터 구조가 API 스펙과 비즈니스 로직을 좌우하므로 API 명세보다 먼저 확정한다.
  4. API 명세 및 Mock API 작성 — 실제 로직 구현 전에 프론트/타 팀과 인터페이스를 먼저 합의해 병렬 개발을 가능하게 한다.
  5. 요구사항 분석 및 시스템 설계 고도화 — 초기 설계로는 놓친 예외 케이스나 확장 포인트를 실제 구현 전에 한 번 더 검증하는 단계다.
  6. API Swagger 기능 구현 및 캡쳐본 첨부 (README) — 문서화된 API 스펙을 실행 가능한 형태로 남겨 협업자가 직접 호출/검증할 수 있게 한다.
  7. 주요 비즈니스 로직 개발 및 단위 테스트 작성 — 핵심 로직은 가장 먼저 구현하고, 단위 테스트로 개별 로직의 정확성을 먼저 보장한 뒤 통합 단계로 넘어간다.
  8. 비즈니스 Usecase 개발 및 통합 테스트 작성 — 단위 단위로 검증된 로직들이 실제 유스케이스(여러 로직의 조합) 흐름에서도 맞물려 동작하는지 확인한다.
  9. 비즈니스별 발생할 수 있는 에러 코드 정의 및 관리 체계 구축 — 기능이 어느 정도 갖춰진 뒤에야 실제로 어떤 실패 케이스들이 존재하는지 구체적으로 정의할 수 있다.
  10. 글로벌 에러 핸들러를 통해 예외 로깅 및 응답 처리 핸들러 구현 — 정의된 에러 코드를 일관된 형식으로 클라이언트에 응답하고 로깅하기 위해, 개별 처리 대신 공통 핸들러로 묶는다.
  11. 시나리오별 동시성 통합 테스트 작성 — 에러 처리까지 갖춰진 뒤 마지막으로 여러 요청이 동시에 들어오는 상황(race condition 등)에서도 안정적인지 검증한다.